﻿
using Xacml.Core;
using System;
using System.Xml;

namespace Xacml.Core.Policy
{
  public abstract class TargetItemBase : TargetItemBaseReadWrite
  {
    public override TargetMatchCollectionReadWrite Match
    {
      get
      {
        return (TargetMatchCollectionReadWrite) new TargetMatchCollection(base.Match);
      }
      set
      {
        throw new NotSupportedException();
      }
    }

    protected TargetItemBase(XacmlVersion schemaVersion)
      : base(schemaVersion)
    {
    }

    protected TargetItemBase(TargetMatchCollectionReadWrite match, XacmlVersion schemaVersion)
      : base(match, schemaVersion)
    {
    }

    protected TargetItemBase(XmlReader reader, string targetItemNodeName, string matchNodeName, XacmlVersion schemaVersion)
      : base(reader, targetItemNodeName, matchNodeName, schemaVersion)
    {
    }
  }
}
